草庐IT

Java Future - Spring Authentication 在 AuditorAware 中为空

全部标签

java - 写得很好的检查在 java 中可以为空的数字

我有一个应用程序,我需要处理来自外部来源的大量数字(整数或长整数)。数字可以为空。如果它们为空,我总是需要将它们转换为0。这个问题看似微不足道,但我不想写上百遍:if(someNumber==null){someNumber=0;}我不喜欢它有两个原因:我不喜欢为这么简单的任务写三行代码,尤其是因为我需要做很多次我不喜欢“改变”someNumber(将新值分配给someNumber变量)我尝试了一些可以在这里看到的其他方法:publicstaticvoidmain(String[]args){IntegerzeroOrNull=newRandom().nextBoolean()?0:n

java - 即使为空,如何干净地处理 java 8 流 "findFirst()"结果

我经常发现与Java8流混淆的一个方面是当中间结果可能为空时,如果它为空或不为空,您需要采用备用路径。例如,如果我有这样的代码:StringpymtRef=defaultValue;OptionalpaymentTender=paymentTenders.stream().filter(pt->(pt.getFlag()==Flag.N||pt.getFlag()==null)).findFirst();if(paymentTender.isPresent()){pymtRef=paymentTender.get().getId();}returnpymtRef;我想弄清楚如何删除条件

java - JPA/Hibernate 代理未获取真实对象数据,将所有属性设置为空

我将Hibernate与JPA结合使用,并且有如下所示的关系:publicclassPencilImplimplementsPencil{@ManyToOne(targetEntity=PersonImpl.class,fetch=FetchType.LAZY)@JoinColumn(name="owner",nullable=false)privatePersonowner;...@OverridepublicfinalPersongetOwner(){returnowner;}}自从我开始使用LAZY获取类型以来,每次我尝试获取铅笔的所有者(pencil.getOwner)时,我都

java - Java 中的 "this"引用是否为空

这有什么值(value)?我在某处读到C#(this==null)是可能的。但是在Java中呢?那么,以下片段是否会返回true?if(this!=null){returnfalse;}else{returntrue;} 最佳答案 if(this!=null)以上总是评估为true,这意味着您的if的第一个分支将始终被执行,并且该函数始终返回false. 关于java-Java中的"this"引用是否为空,我们在StackOverflow上找到一个类似的问题:

java - 将@Nullable 放在具有可为空返回类型的方法的何处?

这个问题在这里已经有了答案:IsitlegaltoputannotationafteraccessmodifierinJava7?OrJava8?(2个答案)关闭6年前。当使用javax.annotation.Nullable将方法标记为“可能返回null值”时,将@Nullable注释放在哪里?在方法上,还是在返回类型上?是否存在任何技术差异,或者这仅仅是风格问题?样式A:@NullablepublicObjectblah(){...}样式B:public@NullableObjectblah(){...}

java - Hibernate 多对多关联 : left hand side collection contains elements, 但右侧集合为空

我在持久层中遇到了多对多关联的问题。我的场景如下:一个用户可以有多个角色,一个角色可以有多个用户。在测试期间,我遇到了一个奇怪的行为。我创建了角色对象和几个用户对象。角色被设置给每个用户。在此之后,使用DAO保存用户。然后加载其中一个用户以检查他是否获得了在保存用户对象之前传递给他的角色。对用户调用getRoles()表明角色设置正确。为了检查反向是否也有效,使用角色DAO从数据库加载角色对象。但是在角色对象上调用getUsers()只会返回一个空集,尽管它应该包含具有该角色的所有用户。我仔细检查了数据库表,但似乎一切正常。用户、角色和user_role表都已正确填写。那么为什么角色对

java - JAXB - 未编码的字段为空

我们正在解码来自http://xmlgw.companieshouse.gov.uk/的响应.这是发送给编码的文本:......20COMPANYNAME23546457LIVEDISSOLVED//moreCoSearchItemelementsCoSearchItem的模型是这样的:@XmlAccessorType(XmlAccessType.FIELD)@XmlType(name="CoSearchItem",propOrder={"companyName","companyNumber","dataSet","companyIndexStatus","companyDate",

java - 在每次方法调用后检查对象是否为空

我有一个简单的片段,我想以更优雅的方式重新设计它,也许可以使用最新的JDK8功能:Stringx=methodCall();if(x==null){x=method2();}if(x==null){x=method3();}if(x==null){x=method4();}//doingcalculationwithX 最佳答案 您可以使用流:Optionalresult=Stream.>of(this::method1,this::method2,this::method3).map(Supplier::get).filter(O

java - 参数可以为空的 Freemarker 函数

我在Freemarker中创建了函数:我这样调用它:${formatDate(object.someDate)}。一切正常,直到someDate为空。在那种情况下,我得到异常:Errorexecutingmacro:formatDaterequiredparameter:anyDateisnotspecified.我该怎么做?如果参数值为null,我希望该函数能够工作。 最佳答案 这是我所做的,这似乎在大多数情况下都有效:默认值应该是一个空字符串,空值检查应该是?has_content。

java - Eclipse 包资源管理器为空

我是Eclipse的新手,我似乎无法让packageexplorer配合。这是我当前的文件树:└───workspace├───bin│└───var├───res│└───gui└───src└───var└───allofmysourcecode我试图在当前树中启动一个工作区,\workspace、\workspace\src和workspace\src\var。所有这些都导致了一个空的包资源管理器。我尝试过EclipseIndigo、Juno、ClassicIndigo和ClassicJuno,但都没有成功。谁能提供帮助? 最佳答案